The transmission of radio signals carrying data in modern wireless communications can be realized based on a number of different communications systems, often specified by a standard. There are increasing requirements for devices which are able to operate to support more than one of these wireless communications systems. Mobile radio receiver devices include analog radio frequency (RF)/intermediate frequency (IF) stages, which are arranged to receive and transmit wireless signals via one or more antennas. The output of the RF/IF stages is typically converted to baseband, where an analog to digital converter (ADC) converts incoming analog signals to digital samples, which are then processed for signal detection and decoding of the data in the form of reliability values. The ADC may alternatively operate directly at IF, in which case the conversion to baseband is performed in the digital domain. A number of different types of frontend processing of the digital samples are known to implement signal detection, including rake receiver processing and channel equalization processing.
In Code Division Multiple Access (CDMA) wireless systems, different physical channels are multiplexed in the code domain using separate spreading sequences. In the case of orthogonal spreading codewords, the original data symbols can then be effectively separated at the receiver by despreading.
In a Wideband CDMA (WCDMA) cellular system, downlink code multiplexing is performed using Orthogonal Variable Spreading Factor (OVSF) codes. However, the OVSF codewords are orthogonal to each other only under the condition of perfect time alignment. In the presence of multipath propagation, the code orthogonality is lost, and the operation of despreading is affected by Multiple Access Interference (MAI).
CDMA mobile radio receivers conventionally employ a rake processor which relies on the correlation properties of the spreading sequences. A rake processor is described for example in J. G. Proakis, “Digital Communications”, New York: McGraw-Hill, 1995. This type of receiver is subject to performance degradation in the presence of code correlation, if the MAI between code-multiplexed transmission is comparable to the other sources of noise and interference. Under these conditions, a performance advantage may be achieved by attempting to restore the orthogonality between the codes before despreading. Nevertheless, the sub-optimality of conventional 3GPP receivers based on rake processing causes a significant performance penalty, especially for downlink data rates increasing from the 384 kbps for WCDMA Release 99 to high speed downlink packet access (HDSPA) rates of several Mbps. When the code orthogonality is destroyed by multipath, an effective approach is to use channel equalization instead of rake processing.
Channel equalization techniques have been widely employed over the last decades for combating intersymbol interference on frequency selective transmission channels. Channel equalization techniques are described in J. G. Proakis, “Digital Communications”, New York: McGraw-Hill, 1995, and S. Benedetto, E. Biglieri, and V. Castellani, “Digital Transmission Theory”, Englewood Cliffs, N.J.: Prentice-Hall, 1987. Channel equalizers have recently found application in receivers for Time Division Multiple Access (TDMA) and code division multiple access (CDMA) mobile wireless systems. An example of application of channel equalization to a CDMA cellular system is described in A. Klein “Data Detection Algorithms Specially Designed for the Downlink of CDMA Mobile Radio Systems”, IEEE Vehicular Technology Conference, vol. 1, Phoenix Ariz., May 1997, pp. 203-207. In particular in asynchronous CDMA cellular systems, as in the case of the forward link of the 3GPP WCDMA standard, chip level equalization allows to significantly improve the performance over conventional rake receivers, at the cost of an increased implementation complexity. This advantage is especially important for high rate data transmission, as in 3GPP high speed downlink packet access (HSDPA).
The output from the rake processing or channel equalization processing is supplied to subsequent signal processing techniques in order to derive the logical values from the data, in particular decoding functions. The main baseband processing functions following rake/equalizer processing (including descrambling and despreading) are: de-interleaving, rate de-matching (dual of the Tx rate matching function that performs repetition or puncturing), channel decoding, and CRC check. Note that this list is not exhaustive, for instance a WCDMA receiver also implements functions like physical channel de-mapping, transport channel de-multiplexing, and others.
In the past, radio receivers implemented either a rake processor or a channel equalizer depending on the communication system for which the receiver was intended. Techniques are known for implementing the rake receiver or the channel equalizer in hardware.
It would be desirable to implement rake receiver and equalizer functions in software. Implementation in software in principle allows the possibility to use a common processor for implementing either a rake receiver or a channel equalizer. More generally, the processor can in principle carry out a number of different operations with the result that managing processing resource would become a significant issue.
In addition, many computer processors are limited, by virtue of having a limited instruction set, fixed at the time of manufacture, in their ability to efficiently handle different types of data processing calculations with certain algorithms and in their ability to perform different algorithms. A processor which provides an improved platform for handling software-customized instructions which operate on multi-bit operand values is described in WO2006/117562 and is available under the trade mark LIVANTO. That processor provides a configurable execution unit comprising operators capable of being dynamically configured at the level of processing multi-bit operand values by an instruction.